class: center, middle, inverse, title-slide .title[ # Encuentro 5: Reportes con Rmarkdown ] .subtitle[ ## Escuela de Verano: Taller de Introducción al procesamiento y análisis de datos sobre mercado de trabajo con R ] .author[ ### Francisco Favieri | Beatriz Soria ] --- <style type="text/css"> .remark-slide-content { font-size: 25px; padding: 1em 1em 1em 1em; } <style type="text/css"> .remark-code{ line-height: 1.5; font-size: 80% } @media print { .has-continuation { display: block; } } </style> # Hoja de ruta Material adaptado del trabajo realizado por Pablo Tiscornia ## ✔️ ¿Qué es Rmarkdown (R + Mardown)? ## ✔️ Conceptos básicos de Markdown (Es un lenguaje) ## ✔️ YAML, chunks y texto *"Yet Another Markup Language"* se traduce como "Otro lenguaje de marcado más" o "Un lenguaje de marcado más". Algunas referencias que inspiran este material: - https://swcarpentry.github.io/r-novice-gapminder-es/15-knitr-markdown/index.html - https://shilaan-apa.netlify.app/ --- # Flujo de Trabajo de las Ciencias Sociales Computacionales <img src="data:image/png;base64,#img/circuito_del_dato_tidy.png" width="75%" style="display: block; margin: auto;" /> --- class: inverse, center, middle # Rmarkdown <html> <div style='float:left'></div> <hr color='#EB811B' size=1px width=1125px> </html> --- # R + Markdown ## Rmarkdown es un formato de Rstudio que permite combinar la **sintaxis de Markdown** para escritura de texto plano con la **sintaxis de R** para el procesamiento de datos. <img src="data:image/png;base64,#img/rmarkdown_proceso.png" width="65%" style="display: block; margin: auto;" /> --- # Hasta ahora... <img src="data:image/png;base64,#img/informe_0.jpg" width="35%" style="display: block; margin: auto;" /> --- # Hasta ahora... <img src="data:image/png;base64,#img/informe_1.jpg" width="35%" style="display: block; margin: auto;" /> --- # Hasta ahora... <img src="data:image/png;base64,#img/informe_2.jpg" width="35%" style="display: block; margin: auto;" /> --- # Hasta ahora... <img src="data:image/png;base64,#img/informe_3.jpg" width="45%" style="display: block; margin: auto;" /> --- # Hasta ahora... <img src="data:image/png;base64,#img/informe_4.jpg" width="45%" style="display: block; margin: auto;" /> --- # Hasta ahora... .pull-left[ <img src="data:image/png;base64,#img/informe_5.jpg" width="100%" style="display: block; margin: auto;" /> ] -- .pull-right[ <img src="data:image/png;base64,#img/you-shall-not-pass-gandalf.gif" width="100%" style="display: block; margin: auto;" /> ] --- # Desventajas del "hasta ahora..." <br> - ## Decenas, cientos, miles de versiones. `informe_FINAL_FINAL_FINAL_V2_1.doc` - ## I-rreproducible - ## ¿Mismo informe con nuevos datos?: "no de nuevo"[1](https://www.youtube.com/watch?v=SOBNO4gl_yM) --- class: middle, center, inverse <img src="data:image/png;base64,#img/logo_rmarkdown.png" width="30%" style="display: block; margin: auto;" /> --- # Rmarkdown .pull-left[ ## Antes: <img src="data:image/png;base64,#img/r_word_markdown.png" width="110%" style="display: block; margin: auto;" /> ] .pull-right[ ## Después: <img src="data:image/png;base64,#img/rmardown_previz.png" width="110%" style="display: block; margin: auto;" /> ] --- # Rmarkdown - Formatos de salida <img src="data:image/png;base64,#img/rmarkdown_salidas.png" width="50%" style="display: block; margin: auto;" /> --- ###**Paquete xaringan** se usa para crear presentaciones en formato HTML con un estilo flexible. Está basado en remark.js, un marco de presentaciones en JavaScript y permite generar diapositivas directamente desde un archivo RMarkdown (.Rmd). ### **Paquete bookdown** permite escribir libros, informes y documentos extensos en R Markdown y exportarlos a PDF, HTML o EPUB. ### **Paquete blogdown**: Para crear blogs y sitios web con R Markdown. --- # ¿Cómo generar un R Markdown? ### Abrir nuevo archivo <img src="data:image/png;base64,#img/rmarkdown_nuevo_archivo.png" width="85%" style="display: block; margin: auto;" /> --- # Componentes (YAML, chunk, texto) <img src="data:image/png;base64,#img/rmarkdown_tripartito.png" width="80%" style="display: block; margin: auto;" /> --- class: inverse, middle, center # _ENCABEZADO (YAML)_ <html> <div style='float:left'></div> <hr color='#EB811B' size=1px width=1125px> </html> --- # Rmarkdown - YAML (metadata o encabezado) <br><br> <img src="data:image/png;base64,#img/rmarkdown_encabezado.png" width="100%" style="display: block; margin: auto;" /> --- class: inverse, middle, center # _CÓDIGO_ <html> <div style='float:left'></div> <hr color='#EB811B' size=1px width=1125px> </html> --- # Rmarkdown - Estructura del chunk <img src="data:image/png;base64,#img/rmd_bloque_de_codigo.png" width="100%" style="display: block; margin: auto;" /> --- # Rmarkdown - Estructura del chunk <img src="data:image/png;base64,#img/chunk_radiografia_1.png" width="90%" style="display: block; margin: auto;" /> -- <img src="data:image/png;base64,#img/chunk_radiografia_2.png" width="90%" style="display: block; margin: auto;" /> -- <img src="data:image/png;base64,#img/chunk_radiografia_3.png" width="90%" style="display: block; margin: auto;" /> --- # Rmarkdown - Estructura del chunk <img src="data:image/png;base64,#img/rmd_bloque_de_codigo_v2.png" width="100%" style="display: block; margin: auto;" /> --- # Rmarkdown - Configuración del chunk | __Función__ | __Acción__ | | :--- | :--- | | `{r echo = FALSE}` | *Muestra sólo resultado del chunk*| | `{r echo = TRUE}` | *Muestra código y resultado del chunk*| | `{r eval = FALSE}` | *Muestra código pero no ejecuta*| | `{r include = FALSE}` | *No muestra nada (ni código ni resultado) pero ejecuta código*| | `{r eval = FALSE, include = FALSE}` | *No muestra nada (ni código ni resultado) tampoco ejecuta*| --- # Rmarkdown - Ejecución del chunk <img src="data:image/png;base64,#img/chunk_corro_uno.png" width="75%" style="display: block; margin: auto;" /> -- <img src="data:image/png;base64,#img/chunk_corro_hasta_aca.png" width="75%" style="display: block; margin: auto;" /> --- # Rmarkdown - Índice del chunk <img src="data:image/png;base64,#img/chunk_etiquetas.png" width="75%" style="display: block; margin: auto;" /> --- class: inverse, middle, center # _TEXTO_ <html> <div style='float:left'></div> <hr color='#EB811B' size=1px width=1125px> </html> --- # Rmarkdown - Código en texto <img src="data:image/png;base64,#img/codigo_en_texto.png" width="100%" style="display: block; margin: auto;" /> --- # RECURSOS - [Guía de comandos para texto en Rmarkdown](https://www.rstudio.com/wp-content/uploads/2015/03/rmarkdown-reference.pdf?_ga=2.157796986.1542626288.1625161001-1806201684.1624641897) - [Guía definitiva de Rmarkdown (en inglés)](https://bookdown.org/yihui/rmarkdown/) - [Machete Rmarkdown](https://raw.githubusercontent.com/rstudio/cheatsheets/main/rmarkdown.pdf) - [Cocina de Rmarkdown (en inglés)](https://bookdown.org/yihui/rmarkdown-cookbook/)